package com.mr_ladeng.utils;

import java.io.File;

import android.content.Context;

/**
 * 
 * @项目名称：	listviewnest
 * @类名称： 	FileCache.java
 * @创建人：	Mr.ladeng (zbl704@yeah.net)
 * @创建时间： 2015-4-24下午6:48:41
 * @修改备注：    
 * @version 1.0   
 * @类描述：		文件缓存类
 */
public class FileCache {  
	  
    private File cacheDir;  
  
    public FileCache(Context context) {  
        // 如果有SD卡则在SD卡中建一个LazyList的目录存放缓存的图片  
        // 没有SD卡就放在系统的缓存目录中  
        if (android.os.Environment.getExternalStorageState().equals(  
                android.os.Environment.MEDIA_MOUNTED))  
            cacheDir = new File(  
                    android.os.Environment.getExternalStorageDirectory(),  
                    "LazyList");  
        else  
            cacheDir = context.getCacheDir();  
        if (!cacheDir.exists())  
            cacheDir.mkdirs();  
    }  
  
    public File getFile(String url) {  
        // 将url的hashCode作为缓存的文件名  
        String filename = String.valueOf(url.hashCode());  
        // Another possible solution  
        // String filename = URLEncoder.encode(url);  
        File f = new File(cacheDir, filename);  
        return f;  
  
    }  
  
    public void clear() {  
        File[] files = cacheDir.listFiles();  
        if (files == null)  
            return;  
        for (File f : files)  
            f.delete();  
    }  
  
}  